This invention relates to a printing method and printing apparatus and, more particularly, to a printing method and printing apparatus for printing in accordance with, e.g., an ink-jet printing method.
In a conventional serial printer and, more particularly, an ink-jet printer, head shading for measuring a variation in printed image density corresponding to each ink discharge nozzle (to be simply referred to as nozzles hereinafter) and correcting image data is performed to reduce a phenomenon (to be referred to as xe2x80x9cdeviated dischargexe2x80x9d hereinafter) in which droplets are discharged while being deviated in different directions in units of nozzles of a printhead, generation of stripes (to be referred to as xe2x80x9cundesirable stripesxe2x80x9d hereinafter) at a boundary portion for printing corresponding to one printhead scanning due to a variation in conveyance amount of a printing medium such as a printing paper sheet, or density unevenness due to the difference in amount of discharged droplet between nozzles.
FIG. 16 is a block diagram showing head shading processing in a conventional serial printer. The processing shown in FIG. 16 assumes so-called multipass printing in which a printhead scans one region plural times to complete printing in that region.
For this processing, first, before execution of actual head shading processing, a patch is printed without executing head shading, and the relationship between the density of input data used for the printing and the density of an image printed by the printer is measured in units of nozzles. Next, the input data density correction coefficient for each nozzle is obtained from the measurement result. This relationship is stored in a table (shading data table 102 in FIG. 16) as shading data in a table format. If the input data resolution does not coincide with the printing resolution of the printer, the correction coefficient is determined in accordance with the input data resolution.
After this preparation, the actual head shading processing is executed.
As shown in FIG. 16, density data input from an input terminal 101 is input to the shading data table 102 and shading correction unit 103. The shading data table 102 outputs a correction coefficient corresponding to the input density value to the shading correction unit 103. The shading correction unit 103 corrects the input density value on the basis of the correction coefficient and outputs the corrected density value to a binarization unit (which is sometimes called bi-level conversion unit) 104.
The binarization unit 104 generates output data (bitmap data) of the printer by well-known binarization processing method and outputs the data to a printing buffer 107. The printing buffer 107 has a capacity to store bitmap data corresponding to printing for one scanning of a printhead+paper feed amount and constructs a ring buffer in units of paper feed amounts. A printing buffer control unit 106 controls input/output to/from the printing buffer 107. When bitmap data of one scanning of the printhead is stored in the printing buffer 107, the printing buffer control unit 106 activates a printer engine (not shown), reads out the bitmap data from the printing buffer 107 and outputs the data to a masking unit 109 as the printhead moves. When bitmap data is input from the binarization unit 104, the printing buffer control unit 106 controls and makes the printing buffer 107 store the data in a free area (area where data already printed is stored) of the printing buffer 107.
When the printer engine is activated, a pass number detection unit 105 detects the pass number (the sequence number of scanning cycle in one region in multipass printing) from the position of a nozzle corresponding to the bitmap data read out from the printing buffer 107 and outputs the pass number to an address generation unit 108. The address generation unit 108 generates a read address for a mask generation unit 110 on the basis of the pass number and printhead position.
The mask generation unit 110 is constructed by a lookup table (to be referred to as an xe2x80x9cLUTxe2x80x9d hereinafter) and outputs mask data corresponding to the address generated by the address generation unit 108 to the masking unit 109. The masking unit 109 calculates the logical-product (AND operation) of the bitmap data read out from the printing buffer 107 and the mask data from the mask generation unit 110 and transfers the calculation result to a printhead 111. Thus, the bitmap data is divided into data to be used in units of a plurality of passes.
In a conventional ink-jet printer, multipass printing for dividing an image corresponding to one scanning of a printhead into a plurality of scanning cycles and forming the image is also performed to reduce generation of stripes (to be referred to as xe2x80x9cstripes due to a discharge position errorxe2x80x9d hereinafter) or density unevenness in the printed image, which occurs when the discharge position on the printing medium deviates from a predetermined position because of deviated discharge or a variation in conveyance amount of the printing medium.
FIG. 17 is a block diagram showing the outline of multipass printing control of a conventional ink-jet printer.
Bitmap data input from an input terminal 1111 is stored at a predetermined address of a printing buffer 1113 under the control of a buffer control unit 1112. The printing buffer 1113 has a capacity to store bitmap data corresponding to one scanning of a printhead+paper feed amount and constructs a ring buffer in units of paper feed amounts.
When the buffer control unit 1112 controls the printing buffer 1113 to store bitmap data corresponding to one scanning of the printhead in the printing buffer 1113, a printer engine (not shown) is activated. The bitmap data is read out from the printing buffer 1113 and output to a masking unit 1117 as a printhead 1001 moves. When bitmap data is input from the input terminal 1111, the printing buffer 1113 is controlled to store the data in a free area (area where data already printed is stored) of the printing buffer 1113.
When the printer engine is activated, a pass number detection unit 1116 detects the pass number from the position of a nozzle of the printhead 1001 corresponding to the bitmap data read out from the printing buffer 1113 and outputs the pass number to an address generation unit 1115. The address generation unit 1115 generates a read address for a mask generation unit 1114 on the basis of the pass number and printhead position.
The mask generation unit 1114 is constructed by a lookup table (LUT) and outputs mask data corresponding to the address generated by the address generation unit 1115 to the masking unit 1117. The masking unit 1117 calculates the logical-product of the bitmap data read out from the printing buffer 1113 and the mask data read out from the mask generation unit 1114, thereby masking the bitmap data such that printing is completed by scanning (passing) the printhead plural times. The masked bitmap data is transferred to the printhead 1001 by a head driver 1705.
In the above-mentioned conventional art, shading correction is performed for multivalued data before binarization. If print data and a nozzle of the printhead are not made to correspond to each other at this time, correction does not consider the discharge characteristics of each nozzle. However, actual printing is performed on the basis of binary data. Since the input data does not take the discharge characteristics of each nozzle into consideration, no accurate correction is performed.
To solve this problem, it is necessary to grasp the correspondence between each nozzle number of the printhead and each bit of the bitmap data obtained from binarization. However, always grasping such correspondence increases the load on a printer driver, which is a program installed in a personal computer or the like to perform printer control, and is actually almost impossible.
As described above, to strictly execute head shading, each nozzle and each bit of bit data must have a one-to-one correspondence. In multipass printing, data changes in units of passes depending on the mask pattern. For this reason, it becomes harder to make a one to one correspondence between each nozzle and data to be used in units of passes.
When the image data resolution is different from the printing resolution of the printer, the input resolution for shading correction must be matched with the output resolution of the printer, and additionally, correction curves (correction tables) must be provided in units of input densities and nozzles, resulting in enormous processing. Such enormous processing reduces the printing speed. If a circuit for performing the enormous processing at a high speed is provided, this results in increasing the apparatus cost.
In the conventional multipass printing, since a plurality of different mask patterns designated by pass numbers are stored in the mask generation unit 1114 in the format of an LUT, the pass number detection unit 1116 is indispensable for the apparatus, resulting in complex arrangement of the address generation unit 1115.
In a high-resolution printer, the ratio of fluctuation (to be referred to as a xe2x80x9cprinting errorxe2x80x9d hereinafter) of the printed dot position with respect to the diameter of the- dot printed by a discharged ink droplet is high. To reduce stripes by multipass printing, the number of divided passes need be considerably increased, resulting in very long print output time.
Accordingly, it is an object of the present invention to provide a printing method and printing apparatus which can print a high-quality image at a high speed and low cost.
According to one aspect of the present invention, the foregoing object is attained by providing a printing method of printing data on a printing medium under multipass printing control of a printhead having a plurality of printing elements, comprising: a generation step of generating a shading-corrected mask pattern for the multipass printing control in consideration of characteristics of each printing element of the printhead; a setting step of setting a size of the mask pattern in a conveyance direction of the printing medium to be an integer multiple of a conveyance amount of the printing medium per scanning of the printhead; and a printing step of applying the mask pattern to image data, transferring the masked image data to the printhead, and printing.
The image data is data obtained by binarizing multivalued density data.
The generation step may comprise generating a plurality of mask patterns in accordance with a density range of the multivalued density data. In this case, the method preferably further comprises a selection step of selecting one of the plurality of mask patterns in accordance with the density range of the multivalued density data.
The generation step preferably comprises, in units of printing elements of the printhead, inputting density data, performing correction to obtain a linear relationship between the input density data and an output density obtained from the printhead by actual printing, and generating the mask pattern on the basis of correction.
In accordance with the aspect of the present invention as described above, a mask pattern for multipass printing control, which is shading-corrected in consideration of characteristics of each printing element of the printhead, is generated, the size of the mask pattern in the conveyance direction of the printing medium is set to be an integer multiple of the conveyance amount of the printing medium in each scanning of the printhead, and image data masked using the mask pattern is transferred to the printhead for printing.
According to another aspect of the present invention, the foregoing object is attained by providing a printing method of printing data on a printing medium under multipass printing control of a printhead having a plurality of printing elements, comprising: a generation step of, in units of printing elements of the printhead, inputting data indicating a position of said printhead along a moving direction of the printhead and quantized data, and generating a conversion table used for outputting a shading-corrected dot pattern in consideration of characteristics of each printing element of the printhead; a setting step of setting a size of the conversion table in a conveyance direction of the printing medium to be an integer multiple of a conveyance amount of the printing medium per scanning of the printhead; and a printing step of inputting quantized data which has undergone pseudo-halftoning to the conversion table to convert the quantized data, transferring the converted quantized data to the printhead, and printing.
The pseudo-halftoning includes error diffusion processing.
The generation step preferably comprises, in units of printing elements of the printhead, inputting density data, performing correction to obtain a linear relationship between the input density data and an output density obtained from the printhead by actual printing, and generating a conversion table on the basis of correction.
In accordance with the aspect of the present invention as described above, in units of printing elements of the printhead, a dot pattern constructed by quantized data corresponding to a predetermined number of pixels in a moving direction of the printhead is input, and a conversion table used for outputting a dot pattern shading-corrected in consideration of characteristics of each printing element of the printhead is generated, the size of the conversion table in the conveyance direction of the printing medium is set to be an integer multiple of a conveyance amount of the printing medium in each scanning of the printhead, and quantized data which has undergone pseudo-halftoning is input to the conversion table and converted, and the converted quantized data is transferred to the printhead for printing.
According to still another aspect of the present invention, the foregoing object is attained by providing a printing apparatus for printing using the above printing method.
The printhead preferably comprises an ink-jet printhead for discharging ink for printing. In this case, the ink-jet printhead preferably comprises an electrothermal transducer for generating thermal energy to be given to ink to discharge the ink using the thermal energy.
According to still another aspect of the present invention, the foregoing object is attained by providing a printing method of printing data on a printing medium by multipass printing while scanning, in a direction perpendicular to a conveyance direction of the printing medium, a printhead having a plurality of printing elements arrayed in the conveyance direction, comprising: a setting step of setting a size of a mask pattern, in the conveyance direction, for masking print data in accordance with each pass printing of the multipass printing to be equivalent to the number of the plurality of printing elements arrayed on the printhead; and a division step of dividing the mask pattern for each pass printing, and using the divided mask pattern.
According to still another aspect of the present invention, the foregoing object is attained by providing a printing apparatus to which the above printing method is applied.
The printing apparatus comprises: conveyance means for conveying a printing medium; an ink-jet printhead having a plurality of printing elements arrayed in a conveyance direction of the printing medium; scanning means for reciprocally scanning the ink-jet printhead; a printing buffer for temporarily storing print data; and control means for controlling to print the data on the printing medium on the basis of the print data stored in the printing buffer using the ink-jet printhead by multipass printing using a mask pattern for masking the print data in accordance with each pass printing, wherein a size of the mask pattern in the conveyance direction is set to be equivalent to the number of the plurality of printing elements arrayed on the printhead, and the mask pattern is dividedly used for each pass printing.
The invention is particularly advantageous since a mask pattern need not be prepared in units of passes of multipass printing, and appropriate shading correction can be performed with a simple arrangement.
Since pseudo-halftoning and shading correction are integrated, shading correction can be performed with a simpler arrangement.
An LUT need not be prepared in units of passes of multipass printing. Processing such as pass detection associated with pass control can be omitted. Hence, multipass printing can be performed with a simpler arrangement, i.e., at lower cost.
In a case where an error of the position of a dot printed by each printing element of the printhead is detected, multipass printing can be performed using a nozzle with a minimum error in consideration of the detection result. For this reason, printing with higher quality can be performed.
In addition, the array of print data can be exchanged for printing. Even when, for example, the error of each printing element of the printhead exceeds the printing element pitch, high-quality printing can be performed.
Since high-quality image printing can be realized without increasing the number of passes for multipass printing, a high printing speed can be maintained.
Other features and advantages of the present invention will be apparent from the following description taken in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout the figures thereof.